import path from 'node:path';

import { defineManifestConfig } from '@uni-helper/vite-plugin-uni-manifest';
import { loadEnv } from 'vite';

const env = loadEnv(process.env.NODE_ENV!, path.resolve(process.cwd(), 'env'));
const { VITE_UNI_APPID, VITE_APP_TITLE } = env;

export default defineManifestConfig({
  'name': VITE_APP_TITLE,
  'appid': VITE_UNI_APPID,
  'description': '',
  'versionName': '1.0.8',
  'versionCode': '108',
  'transformPx': false,
  /* 5+App特有相关 */
  'app-plus': {
    usingComponents: true,
    nvueStyleCompiler: 'uni-app',
    compilerVersion: 3,
    splashscreen: {
      alwaysShowBeforeRender: true,
      waiting: true,
      autoclose: true,
      delay: 0
    },
    compatible: {
      ignoreVersion: true
    },
    /* 模块配置 */
    modules: {
      VideoPlayer: {}
    },
    /* 应用发布信息 */
    distribute: {
      /* android打包配置 */
      android: {
        'permissions': [
          '<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>',
          '<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>',
          '<uses-permission android:name="android.permission.VIBRATE"/>',
          '<uses-permission android:name="android.permission.READ_LOGS"/>',
          '<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>',
          '<uses-feature android:name="android.hardware.camera.autofocus"/>',
          '<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>',
          '<uses-permission android:name="android.permission.CAMERA"/>',
          '<uses-permission android:name="android.permission.GET_ACCOUNTS"/>',
          '<uses-permission android:name="android.permission.READ_PHONE_STATE"/>',
          '<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>',
          '<uses-permission android:name="android.permission.WAKE_LOCK"/>',
          '<uses-permission android:name="android.permission.FLASHLIGHT"/>',
          '<uses-feature android:name="android.hardware.camera"/>',
          '<uses-permission android:name="android.permission.WRITE_SETTINGS"/>',
          '<uses-permission android:name="android.permission.INTERNET"/>'
        ],
        'targetSdkVersion': 30,
        'minSdkVersion': 25,
        'abiFilters': ['armeabi-v7a', 'arm64-v8a'],
        'screenOrientation': ['portrait', 'landscape'],
        'supports-screens': {
          smallScreens: true,
          normalScreens: true,
          largeScreens: true,
          xlargeScreens: true,
          resizeable: true,
          anyDensity: true
        }
      },
      /* ios打包配置 */
      ios: {
        dSYMs: false
      },
      /* SDK配置 */
      sdkConfigs: {}
    }
  },
  /* 快应用特有相关 */
  'quickapp': {},
  /* 小程序特有相关 */
  'mp-weixin': {
    appid: '',
    setting: {
      urlCheck: false
    },
    usingComponents: true
  },
  'mp-alipay': {
    usingComponents: true
  },
  'mp-baidu': {
    usingComponents: true
  },
  'mp-toutiao': {
    usingComponents: true
  },
  'uniStatistics': {
    enable: false
  },
  'vueVersion': '3'
});
